<?php namespace app\home\controller;
//多个控制器公用的东西，放在公共控制器里面
use houdunwang\view\View;

class Common{
    public function __construct()
    {
        //1.获取配置文件中的数据
        $webSetData = $this->getWebSet();
       View::with('webSetData',$webSetData);
       //2.获取导航条一级分类数据
        $cateData = $this->getCateData();
        View::with('cateData',$cateData);

        //3.获取所有分类数据
        $allCateData = $this->getAllCate();
        View::with('allCateData',$allCateData);

        //4.获取标签云
        $allTagData = $this->getAllTag();
        View::with('allTagData',$allTagData);
        //p($allTagData);

        //5.友情链接
        $allLinkData = $this->getAllLink();
        View::with('allLinkData',$allLinkData);
        //p($allLinkData);

        //6.底部最新文章
        $newArticle = $this->getNewArticle();
        View::with('newArticle',$newArticle);
        //p($newArticle);
    }


    /*
     * 1.获取配置文件中的数据
     */
    public function getWebSet(){
        return Db::table('webset')->lists('name,value');
    }
    /**
     * 2.导航条分类数据(顶级分类，pid=0)
     */
    public function getCateData(){
        return Db::table('category')->where('pid','=',0)->get();
    }
    /**
     * 3.右侧分类列表分类数据
     */
    public function getAllCate(){
        $data = Db::table('category')->get();
        foreach($data as $k=>$v){
        //[3,3,4,5,6,[7,4,6]]就像替换某个数字都是通过下标找到某个数再替换。下面是新闻有几篇文章，娱乐有几篇文章
            $data[$k]['total'] = Db::table('article')->where('is_recycle',0)->where('category_cid',$v['cid'])->count();
        }
        return $data;
    }
    /**
     * 4.获取标签云
     */
    public function getAllTag(){
        return Db::table('tag')->field('tid,tname')->get();
    }

    /**
     * 友情链接
     */
    public function getAllLink(){
        return Db::table('link')->field('lname,url')->get();
    }

    /**
     * 6.底部最新文章
     */
    public function getNewArticle(){
        return Db::table('article')->orderBy('sendtime','DESC')->where('is_recycle',0)->limit(3)->get();
    }

}



















